<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Jetson Inference: jetson-inference/detectNet.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="NVLogo_2D.jpg"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Jetson Inference
   </div>
   <div id="projectbrief">DNN Vision Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('detectNet_8h_source.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">detectNet.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="detectNet_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> * Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> * Permission is hereby granted, free of charge, to any person obtaining a</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> * copy of this software and associated documentation files (the &quot;Software&quot;),</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> * to deal in the Software without restriction, including without limitation</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> * the rights to use, copy, modify, merge, publish, distribute, sublicense,</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"> * and/or sell copies of the Software, and to permit persons to whom the</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> * Software is furnished to do so, subject to the following conditions:</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment"> * The above copyright notice and this permission notice shall be included in</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"> * all copies or substantial portions of the Software.</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"> * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment"> * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment"> * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"> * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"> * DEALINGS IN THE SOFTWARE.</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#ifndef __DETECT_NET_H__</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#define __DETECT_NET_H__</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="tensorNet_8h.html">tensorNet.h</a>&quot;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="group__detectNet.html#gac824e329015dc8aed6e1112bfe21cb97">   34</a></span>&#160;<span class="preprocessor">#define DETECTNET_DEFAULT_INPUT   &quot;data&quot;</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="group__detectNet.html#ga1e79603783719e4a79f2c68f1ef47621">   40</a></span>&#160;<span class="preprocessor">#define DETECTNET_DEFAULT_COVERAGE  &quot;coverage&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="group__detectNet.html#gac8c52a38ffa041865ed71fd2ea806620">   46</a></span>&#160;<span class="preprocessor">#define DETECTNET_DEFAULT_BBOX  &quot;bboxes&quot;</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="group__detectNet.html#ga5de620e838c2ac9aec16c6de2977513f">   52</a></span>&#160;<span class="preprocessor">#define DETECTNET_DEFAULT_THRESHOLD 0.5f</span></div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="group__detectNet.html#ga98aed3513105a81bd86361eef5423383">   58</a></span>&#160;<span class="preprocessor">#define DETECTNET_DEFAULT_ALPHA 120</span></div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="group__imageNet.html#gad5f43885a04689f10c6f9d297ab88a8d">   64</a></span>&#160;<span class="preprocessor">#define DETECTNET_USAGE_STRING  &quot;detectNet arguments: \n&quot;                                                               \</span></div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">                  &quot;  --network NETWORK     pre-trained model to load, one of the following:\n&quot;          \</span></div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor">                  &quot;                            * ssd-mobilenet-v1\n&quot;                                                    \</span></div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">                  &quot;                            * ssd-mobilenet-v2 (default)\n&quot;                                  \</span></div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">                  &quot;                            * ssd-inception-v2\n&quot;                                                    \</span></div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">                  &quot;                            * pednet\n&quot;                                                                      \</span></div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">                  &quot;                            * multiped\n&quot;                                                            \</span></div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">                  &quot;                            * facenet\n&quot;                                                                     \</span></div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor">                  &quot;                            * coco-airplane\n&quot;                                                       \</span></div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="preprocessor">                  &quot;                            * coco-bottle\n&quot;                                                                 \</span></div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">                  &quot;                            * coco-chair\n&quot;                                                          \</span></div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor">                  &quot;                            * coco-dog\n&quot;                                                            \</span></div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">                  &quot;  --model MODEL         path to custom model to load (caffemodel, uff, or onnx)\n&quot;                                   \</span></div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">                  &quot;  --prototxt PROTOTXT   path to custom prototxt to load (for .caffemodel only)\n&quot;                                    \</span></div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">                  &quot;  --class_labels LABELS path to text file containing the labels for each class\n&quot;                                    \</span></div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">                  &quot;  --threshold THRESHOLD minimum threshold for detection (default is 0.5)\n&quot;                                                  \</span></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="preprocessor">                  &quot;  --input_blob INPUT    name of the input layer (default is &#39;&quot; DETECTNET_DEFAULT_INPUT &quot;&#39;)\n&quot;                        \</span></div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor">                  &quot;  --output_cvg COVERAGE name of the coverge output layer (default is &#39;&quot; DETECTNET_DEFAULT_COVERAGE &quot;&#39;)\n&quot;    \</span></div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor">                  &quot;  --output_bbox BOXES   name of the bounding output layer (default is &#39;&quot; DETECTNET_DEFAULT_BBOX &quot;&#39;)\n&quot;       \</span></div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="preprocessor">                  &quot;  --mean_pixel PIXEL    mean pixel value to subtract from input (default is 0.0)\n&quot;                                  \</span></div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="preprocessor">                  &quot;  --batch_size BATCH    maximum batch size (default is 1)\n&quot;                                                                         \</span></div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="preprocessor">            &quot;  --alpha ALPHA         overlay alpha blending value, range 0-255 (default: 120)\n&quot;                                        \</span></div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="preprocessor">                  &quot;  --profile             enable layer profiling in TensorRT\n&quot;</span></div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="classdetectNet.html">   93</a></span>&#160;<span class="keyword">class </span><a class="code" href="classdetectNet.html">detectNet</a> : <span class="keyword">public</span> <a class="code" href="classtensorNet.html">tensorNet</a></div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;{</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html">   99</a></span>&#160;        <span class="keyword">struct </span><a class="code" href="structdetectNet_1_1Detection.html">Detection</a></div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        {</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                <span class="comment">// Object Info</span></div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a388eef39f557028d777d9102acd3c646">  102</a></span>&#160;                uint32_t <a class="code" href="structdetectNet_1_1Detection.html#a388eef39f557028d777d9102acd3c646">Instance</a>;      </div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a0baef8e908f93105f2e6d1202ae2954e">  103</a></span>&#160;                uint32_t <a class="code" href="structdetectNet_1_1Detection.html#a0baef8e908f93105f2e6d1202ae2954e">ClassID</a>;       </div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a04b420d87cc33bd1b3d3192509b4bfa5">  104</a></span>&#160;                <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a04b420d87cc33bd1b3d3192509b4bfa5">Confidence</a>;       </div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                <span class="comment">// Bounding Box Coordinates</span></div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a42914a705a6cad72e56a9ad4fb68b0e6">  107</a></span>&#160;                <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a42914a705a6cad72e56a9ad4fb68b0e6">Left</a>;             </div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#aa008c7f9d614b314281366b7797cd00a">  108</a></span>&#160;                <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#aa008c7f9d614b314281366b7797cd00a">Right</a>;            </div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a2776e71cde1e6c41676bb5e6d12b1d0d">  109</a></span>&#160;                <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a2776e71cde1e6c41676bb5e6d12b1d0d">Top</a>;              </div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a97869bd21815bfc1ca005fa057329ffe">  110</a></span>&#160;                <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a97869bd21815bfc1ca005fa057329ffe">Bottom</a>;           </div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#aeb58c09e547bd40f3a0e33cdd4c7640e">  113</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#aeb58c09e547bd40f3a0e33cdd4c7640e">Width</a>()<span class="keyword"> const                                                                                      </span>{ <span class="keywordflow">return</span> Right - <a class="code" href="structdetectNet_1_1Detection.html#a42914a705a6cad72e56a9ad4fb68b0e6">Left</a>; }</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a2ae87aae76d065e19be1897119daba66">  116</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a2ae87aae76d065e19be1897119daba66">Height</a>()<span class="keyword"> const                                                                                     </span>{ <span class="keywordflow">return</span> Bottom - <a class="code" href="structdetectNet_1_1Detection.html#a2776e71cde1e6c41676bb5e6d12b1d0d">Top</a>; }</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a239620621f33ed918d2f86a678a68c16">  119</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a239620621f33ed918d2f86a678a68c16">Area</a>()<span class="keyword"> const                                                                                       </span>{ <span class="keywordflow">return</span> <a class="code" href="structdetectNet_1_1Detection.html#aeb58c09e547bd40f3a0e33cdd4c7640e">Width</a>() * <a class="code" href="structdetectNet_1_1Detection.html#a2ae87aae76d065e19be1897119daba66">Height</a>(); }</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a596c0884daa44b3fa341ed67508b5fcb">  122</a></span>&#160;                <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a596c0884daa44b3fa341ed67508b5fcb">Width</a>( <span class="keywordtype">float</span> x1, <span class="keywordtype">float</span> x2 )                                                 { <span class="keywordflow">return</span> x2 - x1; }</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div><div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a676289f208f6ad38391117d260414b62">  125</a></span>&#160;                <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a676289f208f6ad38391117d260414b62">Height</a>( <span class="keywordtype">float</span> y1, <span class="keywordtype">float</span> y2 )                                                        { <span class="keywordflow">return</span> y2 - y1; }</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div><div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a14e6f8a1a69ebe30e7c57299ece48c28">  128</a></span>&#160;                <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a14e6f8a1a69ebe30e7c57299ece48c28">Area</a>( <span class="keywordtype">float</span> x1, <span class="keywordtype">float</span> y1, <span class="keywordtype">float</span> x2, <span class="keywordtype">float</span> y2 )                      { <span class="keywordflow">return</span> <a class="code" href="structdetectNet_1_1Detection.html#aeb58c09e547bd40f3a0e33cdd4c7640e">Width</a>(x1,x2) * <a class="code" href="structdetectNet_1_1Detection.html#a2ae87aae76d065e19be1897119daba66">Height</a>(y1,y2); }</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a127aaa41b6d1032aeb13fde8e6856247">  131</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="structdetectNet_1_1Detection.html#a127aaa41b6d1032aeb13fde8e6856247">Center</a>( <span class="keywordtype">float</span>* x, <span class="keywordtype">float</span>* y )<span class="keyword"> const                                                  </span>{ <span class="keywordflow">if</span>(x) *x = Left + <a class="code" href="structdetectNet_1_1Detection.html#aeb58c09e547bd40f3a0e33cdd4c7640e">Width</a>() * 0.5f; <span class="keywordflow">if</span>(y) *y = Top + <a class="code" href="structdetectNet_1_1Detection.html#a2ae87aae76d065e19be1897119daba66">Height</a>() * 0.5f; }</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a0a62f35a001c19606c58c6b70b4fe633">  134</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structdetectNet_1_1Detection.html#a0a62f35a001c19606c58c6b70b4fe633">Contains</a>( <span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y )<span class="keyword"> const                                                  </span>{ <span class="keywordflow">return</span> x &gt;= Left &amp;&amp; x &lt;= Right &amp;&amp; y &gt;= Top &amp;&amp; y &lt;= <a class="code" href="structdetectNet_1_1Detection.html#a97869bd21815bfc1ca005fa057329ffe">Bottom</a>; }</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;                </div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#aed2dfc21c256e9f08daca442a0dc6a84">  137</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structdetectNet_1_1Detection.html#aed2dfc21c256e9f08daca442a0dc6a84">Intersects</a>( <span class="keyword">const</span> <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>&amp; det, <span class="keywordtype">float</span> areaThreshold=0.0f )<span class="keyword"> const  </span>{ <span class="keywordflow">return</span> (<a class="code" href="structdetectNet_1_1Detection.html#a84ba21eeaf01aae48c3efc119a86d030">IntersectionArea</a>(det) / fmaxf(<a class="code" href="structdetectNet_1_1Detection.html#a239620621f33ed918d2f86a678a68c16">Area</a>(), det.<a class="code" href="structdetectNet_1_1Detection.html#a239620621f33ed918d2f86a678a68c16">Area</a>()) &gt; areaThreshold); }</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        </div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#affc3f01de5faf9ca0fa4dfbd30077bb4">  140</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structdetectNet_1_1Detection.html#affc3f01de5faf9ca0fa4dfbd30077bb4">Intersects</a>( <span class="keywordtype">float</span> x1, <span class="keywordtype">float</span> y1, <span class="keywordtype">float</span> x2, <span class="keywordtype">float</span> y2, <span class="keywordtype">float</span> areaThreshold=0.0f )<span class="keyword"> const  </span>{ <span class="keywordflow">return</span> (<a class="code" href="structdetectNet_1_1Detection.html#a84ba21eeaf01aae48c3efc119a86d030">IntersectionArea</a>(x1,y1,x2,y2) / fmaxf(<a class="code" href="structdetectNet_1_1Detection.html#a239620621f33ed918d2f86a678a68c16">Area</a>(), <a class="code" href="structdetectNet_1_1Detection.html#a239620621f33ed918d2f86a678a68c16">Area</a>(x1,y1,x2,y2)) &gt; areaThreshold); }</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        </div><div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a84ba21eeaf01aae48c3efc119a86d030">  143</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a84ba21eeaf01aae48c3efc119a86d030">IntersectionArea</a>( <span class="keyword">const</span> <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>&amp; det )<span class="keyword"> const                                     </span>{ <span class="keywordflow">return</span> <a class="code" href="structdetectNet_1_1Detection.html#a84ba21eeaf01aae48c3efc119a86d030">IntersectionArea</a>(det.<a class="code" href="structdetectNet_1_1Detection.html#a42914a705a6cad72e56a9ad4fb68b0e6">Left</a>, det.<a class="code" href="structdetectNet_1_1Detection.html#a2776e71cde1e6c41676bb5e6d12b1d0d">Top</a>, det.<a class="code" href="structdetectNet_1_1Detection.html#aa008c7f9d614b314281366b7797cd00a">Right</a>, det.<a class="code" href="structdetectNet_1_1Detection.html#a97869bd21815bfc1ca005fa057329ffe">Bottom</a>); }</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a4b025e25025234e43446fb5719dbd46b">  146</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="structdetectNet_1_1Detection.html#a4b025e25025234e43446fb5719dbd46b">IntersectionArea</a>( <span class="keywordtype">float</span> x1, <span class="keywordtype">float</span> y1, <span class="keywordtype">float</span> x2, <span class="keywordtype">float</span> y2 )<span class="keyword"> const   </span>{ <span class="keywordflow">if</span>(!<a class="code" href="structdetectNet_1_1Detection.html#a344619ce0a8fc04050b3cb6238a815f9">Overlaps</a>(x1,y1,x2,y2)) <span class="keywordflow">return</span> 0.0f; <span class="keywordflow">return</span> (fminf(Right, x2) - fmaxf(Left, x1)) * (fminf(Bottom, y2) - fmaxf(Top, y1)); }</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a344619ce0a8fc04050b3cb6238a815f9">  149</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structdetectNet_1_1Detection.html#a344619ce0a8fc04050b3cb6238a815f9">Overlaps</a>( <span class="keyword">const</span> <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>&amp; det )<span class="keyword"> const                                              </span>{ <span class="keywordflow">return</span> !(det.<a class="code" href="structdetectNet_1_1Detection.html#a42914a705a6cad72e56a9ad4fb68b0e6">Left</a> &gt; Right || det.<a class="code" href="structdetectNet_1_1Detection.html#aa008c7f9d614b314281366b7797cd00a">Right</a> &lt; Left || det.<a class="code" href="structdetectNet_1_1Detection.html#a2776e71cde1e6c41676bb5e6d12b1d0d">Top</a> &gt; Bottom || det.<a class="code" href="structdetectNet_1_1Detection.html#a97869bd21815bfc1ca005fa057329ffe">Bottom</a> &lt; <a class="code" href="structdetectNet_1_1Detection.html#a2776e71cde1e6c41676bb5e6d12b1d0d">Top</a>); }</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                </div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a425de0ee8eaca1dceea17280cb4890b4">  152</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structdetectNet_1_1Detection.html#a425de0ee8eaca1dceea17280cb4890b4">Overlaps</a>( <span class="keywordtype">float</span> x1, <span class="keywordtype">float</span> y1, <span class="keywordtype">float</span> x2, <span class="keywordtype">float</span> y2 )<span class="keyword"> const                    </span>{ <span class="keywordflow">return</span> !(x1 &gt; Right || x2 &lt; Left || y1 &gt; Bottom || y2 &lt; <a class="code" href="structdetectNet_1_1Detection.html#a2776e71cde1e6c41676bb5e6d12b1d0d">Top</a>); }</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                </div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#aaae60d2bea1b7b1a331b7f880674dcaf">  155</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structdetectNet_1_1Detection.html#aaae60d2bea1b7b1a331b7f880674dcaf">Expand</a>( <span class="keywordtype">float</span> x1, <span class="keywordtype">float</span> y1, <span class="keywordtype">float</span> x2, <span class="keywordtype">float</span> y2 )                    { <span class="keywordflow">if</span>(!<a class="code" href="structdetectNet_1_1Detection.html#a344619ce0a8fc04050b3cb6238a815f9">Overlaps</a>(x1, y1, x2, y2)) <span class="keywordflow">return</span> <span class="keyword">false</span>; Left = fminf(x1, Left); Top = fminf(y1, Top); Right = fmaxf(x2, Right); Bottom = fmaxf(y2, Bottom); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;                </div><div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a9a0eb433ce423a5dbaf7e9f2f1c0cb34">  158</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structdetectNet_1_1Detection.html#a9a0eb433ce423a5dbaf7e9f2f1c0cb34">Expand</a>( <span class="keyword">const</span> <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>&amp; det )                                                              { <span class="keywordflow">if</span>(!<a class="code" href="structdetectNet_1_1Detection.html#a344619ce0a8fc04050b3cb6238a815f9">Overlaps</a>(det)) <span class="keywordflow">return</span> <span class="keyword">false</span>; Left = fminf(det.<a class="code" href="structdetectNet_1_1Detection.html#a42914a705a6cad72e56a9ad4fb68b0e6">Left</a>, Left); Top = fminf(det.<a class="code" href="structdetectNet_1_1Detection.html#a2776e71cde1e6c41676bb5e6d12b1d0d">Top</a>, Top); Right = fmaxf(det.<a class="code" href="structdetectNet_1_1Detection.html#aa008c7f9d614b314281366b7797cd00a">Right</a>, Right); Bottom = fmaxf(det.<a class="code" href="structdetectNet_1_1Detection.html#a97869bd21815bfc1ca005fa057329ffe">Bottom</a>, Bottom); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a15b1dafa33b267e1ee2cba6eba0a9ae1">  161</a></span>&#160;                <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="structdetectNet_1_1Detection.html#a15b1dafa33b267e1ee2cba6eba0a9ae1">Reset</a>()                                                                                                     { Instance = 0; ClassID = 0; Confidence = 0; Left = 0; Right = 0; Top = 0; Bottom = 0; }                                                                </div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="structdetectNet_1_1Detection.html#a985bb069089a55dc4a43d360486c1d1f">  164</a></span>&#160;                <span class="keyword">inline</span> <a class="code" href="structdetectNet_1_1Detection.html#a985bb069089a55dc4a43d360486c1d1f">Detection</a>()                                                                                                      { <a class="code" href="structdetectNet_1_1Detection.html#a15b1dafa33b267e1ee2cba6eba0a9ae1">Reset</a>(); }</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        };</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6">  170</a></span>&#160;        <span class="keyword">enum</span> <a class="code" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6">OverlayFlags</a></div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        {</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6a966eaaaa69ed08d36dcb862e3fc644bf">  172</a></span>&#160;                <a class="code" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6a966eaaaa69ed08d36dcb862e3fc644bf">OVERLAY_NONE</a>       = 0,                 </div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6aff23b9098d5bf0f91c31954001c2ff68">  173</a></span>&#160;                <a class="code" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6aff23b9098d5bf0f91c31954001c2ff68">OVERLAY_BOX</a>        = (1 &lt;&lt; 0),  </div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6a7eb5454e7a6dd53d90c2ddd33b00d049">  174</a></span>&#160;                <a class="code" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6a7eb5454e7a6dd53d90c2ddd33b00d049">OVERLAY_LABEL</a>       = (1 &lt;&lt; 1), </div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6af7ce69cd21d84fb3b963713da66756eb">  175</a></span>&#160;                <a class="code" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6af7ce69cd21d84fb3b963713da66756eb">OVERLAY_CONFIDENCE</a> = (1 &lt;&lt; 2),  </div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        };</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;        </div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4">  181</a></span>&#160;        <span class="keyword">enum</span> <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4">NetworkType</a></div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;        {</div><div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4a46004cf6402155cfac9107356b5e7148">  183</a></span>&#160;                <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4a46004cf6402155cfac9107356b5e7148">CUSTOM</a> = 0,             </div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4a0be700962b9af1014273d6c51274d717">  184</a></span>&#160;                <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4a0be700962b9af1014273d6c51274d717">COCO_AIRPLANE</a>,          </div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4ab5ce7152df406d0e699fb47c29cda175">  185</a></span>&#160;                <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4ab5ce7152df406d0e699fb47c29cda175">COCO_BOTTLE</a>,            </div><div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4aa9c3e7f707f38390b8ebe551a6844efd">  186</a></span>&#160;                <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4aa9c3e7f707f38390b8ebe551a6844efd">COCO_CHAIR</a>,             </div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4afb5c869902acb688cf8b4d7e334bc0f4">  187</a></span>&#160;                <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4afb5c869902acb688cf8b4d7e334bc0f4">COCO_DOG</a>,                       </div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4aba129790ea4695b8fc94f0eeecb344de">  188</a></span>&#160;                <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4aba129790ea4695b8fc94f0eeecb344de">FACENET</a>,                        </div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4a6e6da8c4ab8ff441042f7922082be8c3">  189</a></span>&#160;                <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4a6e6da8c4ab8ff441042f7922082be8c3">PEDNET</a>,                 </div><div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4abddff26f00980b719858a6cf6fb71f53">  190</a></span>&#160;                <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4abddff26f00980b719858a6cf6fb71f53">PEDNET_MULTI</a>,           </div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;<span class="preprocessor">#if NV_TENSORRT_MAJOR &gt; 4</span></div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;                SSD_MOBILENET_V1,       </div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;                SSD_MOBILENET_V2,       </div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;                SSD_INCEPTION_V2        </div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;        };</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        <span class="keyword">static</span> <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4">NetworkType</a> <a class="code" href="classdetectNet.html#ae3b1e96eef852854c0152d168f454f09">NetworkTypeFromStr</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* model_name );</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        <span class="keyword">static</span> uint32_t <a class="code" href="classdetectNet.html#a2bb2b446e26a466c9e355f1472f68e4c">OverlayFlagsFromStr</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* flags );</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;        <span class="keyword">static</span> <a class="code" href="classdetectNet.html">detectNet</a>* <a class="code" href="classdetectNet.html#ac7c84410a8b08fc072bffc55f375e8a4">Create</a>( <a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4">NetworkType</a> networkType=<a class="code" href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4abddff26f00980b719858a6cf6fb71f53">PEDNET_MULTI</a>, <span class="keywordtype">float</span> threshold=<a class="code" href="group__detectNet.html#ga5de620e838c2ac9aec16c6de2977513f">DETECTNET_DEFAULT_THRESHOLD</a>, </div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;                                                 uint32_t maxBatchSize=<a class="code" href="group__tensorNet.html#ga5a46a965749d6118e01307fd4d4865c9">DEFAULT_MAX_BATCH_SIZE</a>, <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> precision=<a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">TYPE_FASTEST</a>, </div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;                                                 <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device=<a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a>, <span class="keywordtype">bool</span> allowGPUFallback=<span class="keyword">true</span> );</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;        </div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;        <span class="keyword">static</span> <a class="code" href="classdetectNet.html">detectNet</a>* <a class="code" href="classdetectNet.html#ac7c84410a8b08fc072bffc55f375e8a4">Create</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* prototxt_path, <span class="keyword">const</span> <span class="keywordtype">char</span>* model_path, <span class="keyword">const</span> <span class="keywordtype">char</span>* mean_binary, </div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* class_labels, <span class="keywordtype">float</span> threshold=<a class="code" href="group__detectNet.html#ga5de620e838c2ac9aec16c6de2977513f">DETECTNET_DEFAULT_THRESHOLD</a>, </div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* input = <a class="code" href="group__detectNet.html#gac824e329015dc8aed6e1112bfe21cb97">DETECTNET_DEFAULT_INPUT</a>, </div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* coverage = <a class="code" href="group__detectNet.html#ga1e79603783719e4a79f2c68f1ef47621">DETECTNET_DEFAULT_COVERAGE</a>, </div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* bboxes = <a class="code" href="group__detectNet.html#gac8c52a38ffa041865ed71fd2ea806620">DETECTNET_DEFAULT_BBOX</a>,</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;                                                 uint32_t maxBatchSize=<a class="code" href="group__tensorNet.html#ga5a46a965749d6118e01307fd4d4865c9">DEFAULT_MAX_BATCH_SIZE</a>, </div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;                                                 <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> precision=<a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">TYPE_FASTEST</a>,</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;                                                 <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device=<a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a>, <span class="keywordtype">bool</span> allowGPUFallback=<span class="keyword">true</span> );</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;                                                          </div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;        <span class="keyword">static</span> <a class="code" href="classdetectNet.html">detectNet</a>* <a class="code" href="classdetectNet.html#ac7c84410a8b08fc072bffc55f375e8a4">Create</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* prototxt_path, <span class="keyword">const</span> <span class="keywordtype">char</span>* model_path, <span class="keywordtype">float</span> mean_pixel=0.0f, </div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* class_labels=NULL, <span class="keywordtype">float</span> threshold=<a class="code" href="group__detectNet.html#ga5de620e838c2ac9aec16c6de2977513f">DETECTNET_DEFAULT_THRESHOLD</a>, </div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* input = <a class="code" href="group__detectNet.html#gac824e329015dc8aed6e1112bfe21cb97">DETECTNET_DEFAULT_INPUT</a>, </div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* coverage = <a class="code" href="group__detectNet.html#ga1e79603783719e4a79f2c68f1ef47621">DETECTNET_DEFAULT_COVERAGE</a>, </div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* bboxes = <a class="code" href="group__detectNet.html#gac8c52a38ffa041865ed71fd2ea806620">DETECTNET_DEFAULT_BBOX</a>,</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;                                                 uint32_t maxBatchSize=<a class="code" href="group__tensorNet.html#ga5a46a965749d6118e01307fd4d4865c9">DEFAULT_MAX_BATCH_SIZE</a>, </div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;                                                 <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> precision=<a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">TYPE_FASTEST</a>,</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;                                                 <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device=<a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a>, <span class="keywordtype">bool</span> allowGPUFallback=<span class="keyword">true</span> );</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;        </div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;        <span class="keyword">static</span> <a class="code" href="classdetectNet.html">detectNet</a>* <a class="code" href="classdetectNet.html#ac7c84410a8b08fc072bffc55f375e8a4">Create</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* model_path, <span class="keyword">const</span> <span class="keywordtype">char</span>* class_labels, <span class="keywordtype">float</span> threshold, </div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* input, <span class="keyword">const</span> <a class="code" href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">Dims3</a>&amp; inputDims, </div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* output, <span class="keyword">const</span> <span class="keywordtype">char</span>* numDetections,</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;                                                 uint32_t maxBatchSize=<a class="code" href="group__tensorNet.html#ga5a46a965749d6118e01307fd4d4865c9">DEFAULT_MAX_BATCH_SIZE</a>, </div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;                                                 <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> precision=<a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">TYPE_FASTEST</a>,</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;                                                 <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device=<a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a>, <span class="keywordtype">bool</span> allowGPUFallback=<span class="keyword">true</span> );</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;        <span class="keyword">static</span> <a class="code" href="classdetectNet.html">detectNet</a>* <a class="code" href="classdetectNet.html#ac7c84410a8b08fc072bffc55f375e8a4">Create</a>( <span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>** argv );</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;        </div><div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8c336e6b018a780e7ca74897d1bce628">  293</a></span>&#160;        <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classdetectNet.html#a8c336e6b018a780e7ca74897d1bce628">Usage</a>()               { <span class="keywordflow">return</span> <a class="code" href="group__imageNet.html#gad5f43885a04689f10c6f9d297ab88a8d">DETECTNET_USAGE_STRING</a>; }</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;        <span class="keyword">virtual</span> <a class="code" href="classdetectNet.html#a82c0e177e0da142fa22aa7580077307d">~detectNet</a>();</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;        </div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;        <span class="keywordtype">int</span> <a class="code" href="classdetectNet.html#ac2144a8af64dce65e391ccb6ab0fb5f9">Detect</a>( <span class="keywordtype">float</span>* input, uint32_t width, uint32_t height, <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>** detections, uint32_t overlay=<a class="code" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6aff23b9098d5bf0f91c31954001c2ff68">OVERLAY_BOX</a> );</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;        <span class="keywordtype">int</span> <a class="code" href="classdetectNet.html#ac2144a8af64dce65e391ccb6ab0fb5f9">Detect</a>( <span class="keywordtype">float</span>* input, uint32_t width, uint32_t height, <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>* detections, uint32_t overlay=<a class="code" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6aff23b9098d5bf0f91c31954001c2ff68">OVERLAY_BOX</a> );</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;        </div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classdetectNet.html#a6bad305fe1207b5ad6a1f49e4879c158">Overlay</a>( <span class="keywordtype">float</span>* input, <span class="keywordtype">float</span>* output, uint32_t width, uint32_t height, <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>* detections, uint32_t numDetections, uint32_t flags=<a class="code" href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6aff23b9098d5bf0f91c31954001c2ff68">OVERLAY_BOX</a> );</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        </div><div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="classdetectNet.html#ad50b3774ee7350d0c256d94a785ba9df">  336</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="classdetectNet.html#ad50b3774ee7350d0c256d94a785ba9df">GetThreshold</a>()<span class="keyword"> const                                                       </span>{ <span class="keywordflow">return</span> <a class="code" href="classdetectNet.html#a2a95020a83b2c33353450505355af0ca">mCoverageThreshold</a>; }</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;</div><div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="classdetectNet.html#a1cb45695bf95d5fb5db48976d1de8ae2">  341</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classdetectNet.html#a1cb45695bf95d5fb5db48976d1de8ae2">SetThreshold</a>( <span class="keywordtype">float</span> threshold )                                     { <a class="code" href="classdetectNet.html#a2a95020a83b2c33353450505355af0ca">mCoverageThreshold</a> = threshold; }</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="classdetectNet.html#a38689b7d4b83723038677d66c1961974">  347</a></span>&#160;        <span class="keyword">inline</span> uint32_t <a class="code" href="classdetectNet.html#a38689b7d4b83723038677d66c1961974">GetMaxDetections</a>()<span class="keyword"> const                                        </span>{ <span class="keywordflow">return</span> <a class="code" href="classdetectNet.html#a38283495a61399d8347d67eb95dbe321">mMaxDetections</a>; } </div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;                </div><div class="line"><a name="l00352"></a><span class="lineno"><a class="line" href="classdetectNet.html#acec72d01e020cf5bc50747abb0245f06">  352</a></span>&#160;        <span class="keyword">inline</span> uint32_t <a class="code" href="classdetectNet.html#acec72d01e020cf5bc50747abb0245f06">GetNumClasses</a>()<span class="keyword"> const                                           </span>{ <span class="keywordflow">return</span> <a class="code" href="classdetectNet.html#acf351fe11541d733a37ba99c9b0c8aa3">mNumClasses</a>; }</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;</div><div class="line"><a name="l00357"></a><span class="lineno"><a class="line" href="classdetectNet.html#a6aeee309257b1a42df275fdfe948a585">  357</a></span>&#160;        <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classdetectNet.html#a6aeee309257b1a42df275fdfe948a585">GetClassDesc</a>( uint32_t index )<span class="keyword">       const           </span>{ <span class="keywordflow">return</span> <a class="code" href="classdetectNet.html#a57cdfaea245446565f4e6f72edb0f857">mClassDesc</a>[index].c_str(); }</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;        </div><div class="line"><a name="l00362"></a><span class="lineno"><a class="line" href="classdetectNet.html#a68322545826d7b866a70d5f9758f4d48">  362</a></span>&#160;        <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classdetectNet.html#a68322545826d7b866a70d5f9758f4d48">GetClassSynset</a>( uint32_t index )<span class="keyword"> const               </span>{ <span class="keywordflow">return</span> <a class="code" href="classdetectNet.html#a1c85b56e7b1e4b3e474f47c7f18a157d">mClassSynset</a>[index].c_str(); }</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;        </div><div class="line"><a name="l00367"></a><span class="lineno"><a class="line" href="classdetectNet.html#a8085235ab275b1bad3dcde14ec1223ed">  367</a></span>&#160;        <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classdetectNet.html#a8085235ab275b1bad3dcde14ec1223ed">GetClassPath</a>()<span class="keyword"> const                                         </span>{ <span class="keywordflow">return</span> <a class="code" href="classdetectNet.html#a9e638cff75c285b31b5cb538ff279352">mClassPath</a>.c_str(); }</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;</div><div class="line"><a name="l00372"></a><span class="lineno"><a class="line" href="classdetectNet.html#a93f21ec31720efe6b37de28c688449ac">  372</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">float</span>* <a class="code" href="classdetectNet.html#a93f21ec31720efe6b37de28c688449ac">GetClassColor</a>( uint32_t classIndex )<span class="keyword"> const                </span>{ <span class="keywordflow">return</span> <a class="code" href="classdetectNet.html#adbbb6ba9ae382abe03347333cff66fca">mClassColors</a>[0] + (classIndex*4); }</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classdetectNet.html#ab9ba7c63d2fc417d0908324fd0dc2223">SetClassColor</a>( uint32_t classIndex, <span class="keywordtype">float</span> r, <span class="keywordtype">float</span> g, <span class="keywordtype">float</span> b, <span class="keywordtype">float</span> a=255.0f );</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;        </div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classdetectNet.html#ac2ffd50b5fb52d6ceea09af29b144afc">SetOverlayAlpha</a>( <span class="keywordtype">float</span> alpha );</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;        </div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;<span class="keyword">protected</span>:</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;        <span class="comment">// constructor</span></div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;        <a class="code" href="classdetectNet.html#a07a419d97f14aa0962b737e671ff438a">detectNet</a>( <span class="keywordtype">float</span> meanPixel=0.0f );</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classdetectNet.html#acb367fb540a1dfb719c44ae0e4cdb045">allocDetections</a>();</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classdetectNet.html#a6213356e9907dc284e3212c42b346c62">defaultColors</a>();</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classdetectNet.html#a464e60c5fb80d1ab64928006c2a27702">defaultClassDesc</a>();</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classdetectNet.html#a812068e3db1f9f991e84a217e275b1e0">loadClassDesc</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* filename );</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classdetectNet.html#a4d9b1b0fadbefe2b8e06e555906ae6ec">init</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* prototxt_path, <span class="keyword">const</span> <span class="keywordtype">char</span>* model_path, <span class="keyword">const</span> <span class="keywordtype">char</span>* mean_binary, <span class="keyword">const</span> <span class="keywordtype">char</span>* class_labels, </div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;                         <span class="keywordtype">float</span> threshold, <span class="keyword">const</span> <span class="keywordtype">char</span>* input, <span class="keyword">const</span> <span class="keywordtype">char</span>* coverage, <span class="keyword">const</span> <span class="keywordtype">char</span>* bboxes, uint32_t maxBatchSize, </div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;                         <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> precision, <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device, <span class="keywordtype">bool</span> allowGPUFallback );</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;        </div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;        <span class="keywordtype">int</span> <a class="code" href="classdetectNet.html#ab95004897e18f73cff95a59796f17368">clusterDetections</a>( <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>* detections, uint32_t width, uint32_t height );</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;        <span class="keywordtype">int</span> <a class="code" href="classdetectNet.html#ab95004897e18f73cff95a59796f17368">clusterDetections</a>( <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>* detections, <span class="keywordtype">int</span> n, <span class="keywordtype">float</span> threshold=0.75f );</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classdetectNet.html#ae25ca7f51a3235011442ac1edeafe1d8">sortDetections</a>( <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>* detections, <span class="keywordtype">int</span> numDetections );</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;</div><div class="line"><a name="l00404"></a><span class="lineno"><a class="line" href="classdetectNet.html#a2a95020a83b2c33353450505355af0ca">  404</a></span>&#160;        <span class="keywordtype">float</span>  <a class="code" href="classdetectNet.html#a2a95020a83b2c33353450505355af0ca">mCoverageThreshold</a>;</div><div class="line"><a name="l00405"></a><span class="lineno"><a class="line" href="classdetectNet.html#adbbb6ba9ae382abe03347333cff66fca">  405</a></span>&#160;        <span class="keywordtype">float</span>* <a class="code" href="classdetectNet.html#adbbb6ba9ae382abe03347333cff66fca">mClassColors</a>[2];</div><div class="line"><a name="l00406"></a><span class="lineno"><a class="line" href="classdetectNet.html#ab8e3c3649acd8bb8d7cd45653dbbb7a0">  406</a></span>&#160;        <span class="keywordtype">float</span>  <a class="code" href="classdetectNet.html#ab8e3c3649acd8bb8d7cd45653dbbb7a0">mMeanPixel</a>;</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;</div><div class="line"><a name="l00408"></a><span class="lineno"><a class="line" href="classdetectNet.html#a57cdfaea245446565f4e6f72edb0f857">  408</a></span>&#160;        std::vector&lt;std::string&gt; <a class="code" href="classdetectNet.html#a57cdfaea245446565f4e6f72edb0f857">mClassDesc</a>;</div><div class="line"><a name="l00409"></a><span class="lineno"><a class="line" href="classdetectNet.html#a1c85b56e7b1e4b3e474f47c7f18a157d">  409</a></span>&#160;        std::vector&lt;std::string&gt; <a class="code" href="classdetectNet.html#a1c85b56e7b1e4b3e474f47c7f18a157d">mClassSynset</a>;</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;</div><div class="line"><a name="l00411"></a><span class="lineno"><a class="line" href="classdetectNet.html#a9e638cff75c285b31b5cb538ff279352">  411</a></span>&#160;        std::string <a class="code" href="classdetectNet.html#a9e638cff75c285b31b5cb538ff279352">mClassPath</a>;</div><div class="line"><a name="l00412"></a><span class="lineno"><a class="line" href="classdetectNet.html#ae929c4fd2f6e7a97acec01b6b584e34b">  412</a></span>&#160;        uint32_t    <a class="code" href="classdetectNet.html#ae929c4fd2f6e7a97acec01b6b584e34b">mCustomClasses</a>;</div><div class="line"><a name="l00413"></a><span class="lineno"><a class="line" href="classdetectNet.html#acf351fe11541d733a37ba99c9b0c8aa3">  413</a></span>&#160;        uint32_t          <a class="code" href="classdetectNet.html#acf351fe11541d733a37ba99c9b0c8aa3">mNumClasses</a>;</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"><a class="line" href="classdetectNet.html#a4b2076526e1f5007ffd7f49fc85f5e8d">  415</a></span>&#160;        <a class="code" href="structdetectNet_1_1Detection.html">Detection</a>* <a class="code" href="classdetectNet.html#a4b2076526e1f5007ffd7f49fc85f5e8d">mDetectionSets</a>[2];   <span class="comment">// list of detections, mNumDetectionSets * mMaxDetections</span></div><div class="line"><a name="l00416"></a><span class="lineno"><a class="line" href="classdetectNet.html#a9696a2f1ec59adfadc070e408c3d2abd">  416</a></span>&#160;        uint32_t   <a class="code" href="classdetectNet.html#a9696a2f1ec59adfadc070e408c3d2abd">mDetectionSet</a>;       <span class="comment">// index of next detection set to use</span></div><div class="line"><a name="l00417"></a><span class="lineno"><a class="line" href="classdetectNet.html#a38283495a61399d8347d67eb95dbe321">  417</a></span>&#160;        uint32_t         <a class="code" href="classdetectNet.html#a38283495a61399d8347d67eb95dbe321">mMaxDetections</a>;        <span class="comment">// number of raw detections in the grid</span></div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;</div><div class="line"><a name="l00419"></a><span class="lineno"><a class="line" href="classdetectNet.html#a77b8f8059780ab552d97a046c32e1f8a">  419</a></span>&#160;        <span class="keyword">static</span> <span class="keyword">const</span> uint32_t <a class="code" href="classdetectNet.html#a77b8f8059780ab552d97a046c32e1f8a">mNumDetectionSets</a> = 16; <span class="comment">// size of detection ringbuffer</span></div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;};</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classdetectNet_html_a4b2076526e1f5007ffd7f49fc85f5e8d"><div class="ttname"><a href="classdetectNet.html#a4b2076526e1f5007ffd7f49fc85f5e8d">detectNet::mDetectionSets</a></div><div class="ttdeci">Detection * mDetectionSets[2]</div><div class="ttdef"><b>Definition:</b> detectNet.h:415</div></div>
<div class="ttc" id="classdetectNet_html_a8912b56ba825368c4911e315f4f207e4a6e6da8c4ab8ff441042f7922082be8c3"><div class="ttname"><a href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4a6e6da8c4ab8ff441042f7922082be8c3">detectNet::PEDNET</a></div><div class="ttdoc">Pedestrian / person detector. </div><div class="ttdef"><b>Definition:</b> detectNet.h:189</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a84ba21eeaf01aae48c3efc119a86d030"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a84ba21eeaf01aae48c3efc119a86d030">detectNet::Detection::IntersectionArea</a></div><div class="ttdeci">float IntersectionArea(const Detection &amp;det) const</div><div class="ttdoc">Return the area of the bounding box intersection. </div><div class="ttdef"><b>Definition:</b> detectNet.h:143</div></div>
<div class="ttc" id="classdetectNet_html_a8912b56ba825368c4911e315f4f207e4aa9c3e7f707f38390b8ebe551a6844efd"><div class="ttname"><a href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4aa9c3e7f707f38390b8ebe551a6844efd">detectNet::COCO_CHAIR</a></div><div class="ttdoc">MS-COCO chair class. </div><div class="ttdef"><b>Definition:</b> detectNet.h:186</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a0a62f35a001c19606c58c6b70b4fe633"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a0a62f35a001c19606c58c6b70b4fe633">detectNet::Detection::Contains</a></div><div class="ttdeci">bool Contains(float x, float y) const</div><div class="ttdoc">Return true if the bounding boxes intersect and exceeds area % threshold. </div><div class="ttdef"><b>Definition:</b> detectNet.h:134</div></div>
<div class="ttc" id="classdetectNet_html_a1cb45695bf95d5fb5db48976d1de8ae2"><div class="ttname"><a href="classdetectNet.html#a1cb45695bf95d5fb5db48976d1de8ae2">detectNet::SetThreshold</a></div><div class="ttdeci">void SetThreshold(float threshold)</div><div class="ttdoc">Set the minimum threshold for detection. </div><div class="ttdef"><b>Definition:</b> detectNet.h:341</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a2776e71cde1e6c41676bb5e6d12b1d0d"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a2776e71cde1e6c41676bb5e6d12b1d0d">detectNet::Detection::Top</a></div><div class="ttdeci">float Top</div><div class="ttdoc">Top bounding box cooridnate (in pixels) </div><div class="ttdef"><b>Definition:</b> detectNet.h:109</div></div>
<div class="ttc" id="group__tensorNet_html_gaac6604fd52c6e5db82877390e0378623"><div class="ttname"><a href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a></div><div class="ttdeci">precisionType</div><div class="ttdoc">Enumeration for indicating the desired precision that the network should run in, if available in hard...</div><div class="ttdef"><b>Definition:</b> tensorNet.h:79</div></div>
<div class="ttc" id="group__tensorNet_html_ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b"><div class="ttname"><a href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a></div><div class="ttdoc">GPU (if multiple GPUs are present, a specific GPU can be selected with cudaSetDevice() ...</div><div class="ttdef"><b>Definition:</b> tensorNet.h:108</div></div>
<div class="ttc" id="classdetectNet_html_a1c85b56e7b1e4b3e474f47c7f18a157d"><div class="ttname"><a href="classdetectNet.html#a1c85b56e7b1e4b3e474f47c7f18a157d">detectNet::mClassSynset</a></div><div class="ttdeci">std::vector&lt; std::string &gt; mClassSynset</div><div class="ttdef"><b>Definition:</b> detectNet.h:409</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a9a0eb433ce423a5dbaf7e9f2f1c0cb34"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a9a0eb433ce423a5dbaf7e9f2f1c0cb34">detectNet::Detection::Expand</a></div><div class="ttdeci">bool Expand(const Detection &amp;det)</div><div class="ttdoc">Reset all member variables to zero. </div><div class="ttdef"><b>Definition:</b> detectNet.h:158</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a42914a705a6cad72e56a9ad4fb68b0e6"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a42914a705a6cad72e56a9ad4fb68b0e6">detectNet::Detection::Left</a></div><div class="ttdeci">float Left</div><div class="ttdoc">Left bounding box coordinate (in pixels) </div><div class="ttdef"><b>Definition:</b> detectNet.h:107</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a4b025e25025234e43446fb5719dbd46b"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a4b025e25025234e43446fb5719dbd46b">detectNet::Detection::IntersectionArea</a></div><div class="ttdeci">float IntersectionArea(float x1, float y1, float x2, float y2) const</div><div class="ttdoc">Return true if the bounding boxes overlap. </div><div class="ttdef"><b>Definition:</b> detectNet.h:146</div></div>
<div class="ttc" id="classdetectNet_html_a8912b56ba825368c4911e315f4f207e4ab5ce7152df406d0e699fb47c29cda175"><div class="ttname"><a href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4ab5ce7152df406d0e699fb47c29cda175">detectNet::COCO_BOTTLE</a></div><div class="ttdoc">MS-COCO bottle class. </div><div class="ttdef"><b>Definition:</b> detectNet.h:185</div></div>
<div class="ttc" id="classdetectNet_html_a29e74cde23a8dd541dbd848e457663d6aff23b9098d5bf0f91c31954001c2ff68"><div class="ttname"><a href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6aff23b9098d5bf0f91c31954001c2ff68">detectNet::OVERLAY_BOX</a></div><div class="ttdoc">Overlay the object bounding boxes. </div><div class="ttdef"><b>Definition:</b> detectNet.h:173</div></div>
<div class="ttc" id="group__detectNet_html_gac8c52a38ffa041865ed71fd2ea806620"><div class="ttname"><a href="group__detectNet.html#gac8c52a38ffa041865ed71fd2ea806620">DETECTNET_DEFAULT_BBOX</a></div><div class="ttdeci">#define DETECTNET_DEFAULT_BBOX</div><div class="ttdoc">Name of default output blob of the grid of bounding boxes for DetectNet caffe model. </div><div class="ttdef"><b>Definition:</b> detectNet.h:46</div></div>
<div class="ttc" id="classdetectNet_html_a9e638cff75c285b31b5cb538ff279352"><div class="ttname"><a href="classdetectNet.html#a9e638cff75c285b31b5cb538ff279352">detectNet::mClassPath</a></div><div class="ttdeci">std::string mClassPath</div><div class="ttdef"><b>Definition:</b> detectNet.h:411</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a596c0884daa44b3fa341ed67508b5fcb"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a596c0884daa44b3fa341ed67508b5fcb">detectNet::Detection::Width</a></div><div class="ttdeci">static float Width(float x1, float x2)</div><div class="ttdoc">Calculate the height of the bounding box. </div><div class="ttdef"><b>Definition:</b> detectNet.h:122</div></div>
<div class="ttc" id="classdetectNet_html_ac2144a8af64dce65e391ccb6ab0fb5f9"><div class="ttname"><a href="classdetectNet.html#ac2144a8af64dce65e391ccb6ab0fb5f9">detectNet::Detect</a></div><div class="ttdeci">int Detect(float *input, uint32_t width, uint32_t height, Detection **detections, uint32_t overlay=OVERLAY_BOX)</div><div class="ttdoc">Detect object locations from an RGBA image, returning an array containing the detection results...</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a985bb069089a55dc4a43d360486c1d1f"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a985bb069089a55dc4a43d360486c1d1f">detectNet::Detection::Detection</a></div><div class="ttdeci">Detection()</div><div class="ttdef"><b>Definition:</b> detectNet.h:164</div></div>
<div class="ttc" id="group__detectNet_html_ga1e79603783719e4a79f2c68f1ef47621"><div class="ttname"><a href="group__detectNet.html#ga1e79603783719e4a79f2c68f1ef47621">DETECTNET_DEFAULT_COVERAGE</a></div><div class="ttdeci">#define DETECTNET_DEFAULT_COVERAGE</div><div class="ttdoc">Name of default output blob of the coverage map for DetectNet caffe model. </div><div class="ttdef"><b>Definition:</b> detectNet.h:40</div></div>
<div class="ttc" id="classdetectNet_html_a68322545826d7b866a70d5f9758f4d48"><div class="ttname"><a href="classdetectNet.html#a68322545826d7b866a70d5f9758f4d48">detectNet::GetClassSynset</a></div><div class="ttdeci">const char * GetClassSynset(uint32_t index) const</div><div class="ttdoc">Retrieve the class synset category of a particular class. </div><div class="ttdef"><b>Definition:</b> detectNet.h:362</div></div>
<div class="ttc" id="group__imageNet_html_gad5f43885a04689f10c6f9d297ab88a8d"><div class="ttname"><a href="group__imageNet.html#gad5f43885a04689f10c6f9d297ab88a8d">DETECTNET_USAGE_STRING</a></div><div class="ttdeci">#define DETECTNET_USAGE_STRING</div><div class="ttdoc">Command-line options able to be passed to imageNet::Create() </div><div class="ttdef"><b>Definition:</b> detectNet.h:64</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a676289f208f6ad38391117d260414b62"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a676289f208f6ad38391117d260414b62">detectNet::Detection::Height</a></div><div class="ttdeci">static float Height(float y1, float y2)</div><div class="ttdoc">Calculate the area of the bounding box. </div><div class="ttdef"><b>Definition:</b> detectNet.h:125</div></div>
<div class="ttc" id="classdetectNet_html_ab9ba7c63d2fc417d0908324fd0dc2223"><div class="ttname"><a href="classdetectNet.html#ab9ba7c63d2fc417d0908324fd0dc2223">detectNet::SetClassColor</a></div><div class="ttdeci">void SetClassColor(uint32_t classIndex, float r, float g, float b, float a=255.0f)</div><div class="ttdoc">Set the visualization color of a particular class of object. </div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_aed2dfc21c256e9f08daca442a0dc6a84"><div class="ttname"><a href="structdetectNet_1_1Detection.html#aed2dfc21c256e9f08daca442a0dc6a84">detectNet::Detection::Intersects</a></div><div class="ttdeci">bool Intersects(const Detection &amp;det, float areaThreshold=0.0f) const</div><div class="ttdoc">Return true if the bounding boxes intersect and exceeds area % threshold. </div><div class="ttdef"><b>Definition:</b> detectNet.h:137</div></div>
<div class="ttc" id="classdetectNet_html_ad50b3774ee7350d0c256d94a785ba9df"><div class="ttname"><a href="classdetectNet.html#ad50b3774ee7350d0c256d94a785ba9df">detectNet::GetThreshold</a></div><div class="ttdeci">float GetThreshold() const</div><div class="ttdoc">Retrieve the minimum threshold for detection. </div><div class="ttdef"><b>Definition:</b> detectNet.h:336</div></div>
<div class="ttc" id="group__tensorNet_html_gaa5d3f9981cdbd91516c1474006a80fe4"><div class="ttname"><a href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a></div><div class="ttdeci">deviceType</div><div class="ttdoc">Enumeration for indicating the desired device that the network should run on, if available in hardwar...</div><div class="ttdef"><b>Definition:</b> tensorNet.h:106</div></div>
<div class="ttc" id="group__tensorNet_html_ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9"><div class="ttname"><a href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">TYPE_FASTEST</a></div><div class="ttdoc">The fastest detected precision should be use (i.e. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:82</div></div>
<div class="ttc" id="tensorNet_8h_html"><div class="ttname"><a href="tensorNet_8h.html">tensorNet.h</a></div></div>
<div class="ttc" id="classdetectNet_html_a464e60c5fb80d1ab64928006c2a27702"><div class="ttname"><a href="classdetectNet.html#a464e60c5fb80d1ab64928006c2a27702">detectNet::defaultClassDesc</a></div><div class="ttdeci">void defaultClassDesc()</div></div>
<div class="ttc" id="classdetectNet_html_a29e74cde23a8dd541dbd848e457663d6a7eb5454e7a6dd53d90c2ddd33b00d049"><div class="ttname"><a href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6a7eb5454e7a6dd53d90c2ddd33b00d049">detectNet::OVERLAY_LABEL</a></div><div class="ttdoc">Overlay the class description labels. </div><div class="ttdef"><b>Definition:</b> detectNet.h:174</div></div>
<div class="ttc" id="classdetectNet_html_adbbb6ba9ae382abe03347333cff66fca"><div class="ttname"><a href="classdetectNet.html#adbbb6ba9ae382abe03347333cff66fca">detectNet::mClassColors</a></div><div class="ttdeci">float * mClassColors[2]</div><div class="ttdef"><b>Definition:</b> detectNet.h:405</div></div>
<div class="ttc" id="classdetectNet_html_a57cdfaea245446565f4e6f72edb0f857"><div class="ttname"><a href="classdetectNet.html#a57cdfaea245446565f4e6f72edb0f857">detectNet::mClassDesc</a></div><div class="ttdeci">std::vector&lt; std::string &gt; mClassDesc</div><div class="ttdef"><b>Definition:</b> detectNet.h:408</div></div>
<div class="ttc" id="classdetectNet_html_ac7c84410a8b08fc072bffc55f375e8a4"><div class="ttname"><a href="classdetectNet.html#ac7c84410a8b08fc072bffc55f375e8a4">detectNet::Create</a></div><div class="ttdeci">static detectNet * Create(NetworkType networkType=PEDNET_MULTI, float threshold=DETECTNET_DEFAULT_THRESHOLD, uint32_t maxBatchSize=DEFAULT_MAX_BATCH_SIZE, precisionType precision=TYPE_FASTEST, deviceType device=DEVICE_GPU, bool allowGPUFallback=true)</div><div class="ttdoc">Load a new network instance. </div></div>
<div class="ttc" id="classdetectNet_html_ae3b1e96eef852854c0152d168f454f09"><div class="ttname"><a href="classdetectNet.html#ae3b1e96eef852854c0152d168f454f09">detectNet::NetworkTypeFromStr</a></div><div class="ttdeci">static NetworkType NetworkTypeFromStr(const char *model_name)</div><div class="ttdoc">Parse a string to one of the built-in pretrained models. </div></div>
<div class="ttc" id="classdetectNet_html_ac2ffd50b5fb52d6ceea09af29b144afc"><div class="ttname"><a href="classdetectNet.html#ac2ffd50b5fb52d6ceea09af29b144afc">detectNet::SetOverlayAlpha</a></div><div class="ttdeci">void SetOverlayAlpha(float alpha)</div><div class="ttdoc">Set overlay alpha blending value for all classes (between 0-255). </div></div>
<div class="ttc" id="classdetectNet_html_acb367fb540a1dfb719c44ae0e4cdb045"><div class="ttname"><a href="classdetectNet.html#acb367fb540a1dfb719c44ae0e4cdb045">detectNet::allocDetections</a></div><div class="ttdeci">bool allocDetections()</div></div>
<div class="ttc" id="classdetectNet_html_a4d9b1b0fadbefe2b8e06e555906ae6ec"><div class="ttname"><a href="classdetectNet.html#a4d9b1b0fadbefe2b8e06e555906ae6ec">detectNet::init</a></div><div class="ttdeci">bool init(const char *prototxt_path, const char *model_path, const char *mean_binary, const char *class_labels, float threshold, const char *input, const char *coverage, const char *bboxes, uint32_t maxBatchSize, precisionType precision, deviceType device, bool allowGPUFallback)</div></div>
<div class="ttc" id="classdetectNet_html_a9696a2f1ec59adfadc070e408c3d2abd"><div class="ttname"><a href="classdetectNet.html#a9696a2f1ec59adfadc070e408c3d2abd">detectNet::mDetectionSet</a></div><div class="ttdeci">uint32_t mDetectionSet</div><div class="ttdef"><b>Definition:</b> detectNet.h:416</div></div>
<div class="ttc" id="classdetectNet_html_a8912b56ba825368c4911e315f4f207e4afb5c869902acb688cf8b4d7e334bc0f4"><div class="ttname"><a href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4afb5c869902acb688cf8b4d7e334bc0f4">detectNet::COCO_DOG</a></div><div class="ttdoc">MS-COCO dog class. </div><div class="ttdef"><b>Definition:</b> detectNet.h:187</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a0baef8e908f93105f2e6d1202ae2954e"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a0baef8e908f93105f2e6d1202ae2954e">detectNet::Detection::ClassID</a></div><div class="ttdeci">uint32_t ClassID</div><div class="ttdoc">Class index of the detected object. </div><div class="ttdef"><b>Definition:</b> detectNet.h:103</div></div>
<div class="ttc" id="group__detectNet_html_gac824e329015dc8aed6e1112bfe21cb97"><div class="ttname"><a href="group__detectNet.html#gac824e329015dc8aed6e1112bfe21cb97">DETECTNET_DEFAULT_INPUT</a></div><div class="ttdeci">#define DETECTNET_DEFAULT_INPUT</div><div class="ttdoc">Name of default input blob for DetectNet caffe model. </div><div class="ttdef"><b>Definition:</b> detectNet.h:34</div></div>
<div class="ttc" id="classdetectNet_html_a8912b56ba825368c4911e315f4f207e4abddff26f00980b719858a6cf6fb71f53"><div class="ttname"><a href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4abddff26f00980b719858a6cf6fb71f53">detectNet::PEDNET_MULTI</a></div><div class="ttdoc">Multi-class pedestrian + baggage detector. </div><div class="ttdef"><b>Definition:</b> detectNet.h:190</div></div>
<div class="ttc" id="classdetectNet_html_acec72d01e020cf5bc50747abb0245f06"><div class="ttname"><a href="classdetectNet.html#acec72d01e020cf5bc50747abb0245f06">detectNet::GetNumClasses</a></div><div class="ttdeci">uint32_t GetNumClasses() const</div><div class="ttdoc">Retrieve the number of object classes supported in the detector. </div><div class="ttdef"><b>Definition:</b> detectNet.h:352</div></div>
<div class="ttc" id="classdetectNet_html_a2bb2b446e26a466c9e355f1472f68e4c"><div class="ttname"><a href="classdetectNet.html#a2bb2b446e26a466c9e355f1472f68e4c">detectNet::OverlayFlagsFromStr</a></div><div class="ttdeci">static uint32_t OverlayFlagsFromStr(const char *flags)</div><div class="ttdoc">Parse a string sequence into OverlayFlags enum. </div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_aaae60d2bea1b7b1a331b7f880674dcaf"><div class="ttname"><a href="structdetectNet_1_1Detection.html#aaae60d2bea1b7b1a331b7f880674dcaf">detectNet::Detection::Expand</a></div><div class="ttdeci">bool Expand(float x1, float y1, float x2, float y2)</div><div class="ttdoc">Expand the bounding box if they overlap (return true if so) </div><div class="ttdef"><b>Definition:</b> detectNet.h:155</div></div>
<div class="ttc" id="classdetectNet_html_a8912b56ba825368c4911e315f4f207e4a0be700962b9af1014273d6c51274d717"><div class="ttname"><a href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4a0be700962b9af1014273d6c51274d717">detectNet::COCO_AIRPLANE</a></div><div class="ttdoc">MS-COCO airplane class. </div><div class="ttdef"><b>Definition:</b> detectNet.h:184</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_affc3f01de5faf9ca0fa4dfbd30077bb4"><div class="ttname"><a href="structdetectNet_1_1Detection.html#affc3f01de5faf9ca0fa4dfbd30077bb4">detectNet::Detection::Intersects</a></div><div class="ttdeci">bool Intersects(float x1, float y1, float x2, float y2, float areaThreshold=0.0f) const</div><div class="ttdoc">Return the area of the bounding box intersection. </div><div class="ttdef"><b>Definition:</b> detectNet.h:140</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html"><div class="ttname"><a href="structdetectNet_1_1Detection.html">detectNet::Detection</a></div><div class="ttdoc">Object Detection result. </div><div class="ttdef"><b>Definition:</b> detectNet.h:99</div></div>
<div class="ttc" id="classdetectNet_html_ab8e3c3649acd8bb8d7cd45653dbbb7a0"><div class="ttname"><a href="classdetectNet.html#ab8e3c3649acd8bb8d7cd45653dbbb7a0">detectNet::mMeanPixel</a></div><div class="ttdeci">float mMeanPixel</div><div class="ttdef"><b>Definition:</b> detectNet.h:406</div></div>
<div class="ttc" id="classdetectNet_html_a6aeee309257b1a42df275fdfe948a585"><div class="ttname"><a href="classdetectNet.html#a6aeee309257b1a42df275fdfe948a585">detectNet::GetClassDesc</a></div><div class="ttdeci">const char * GetClassDesc(uint32_t index) const</div><div class="ttdoc">Retrieve the description of a particular class. </div><div class="ttdef"><b>Definition:</b> detectNet.h:357</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a388eef39f557028d777d9102acd3c646"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a388eef39f557028d777d9102acd3c646">detectNet::Detection::Instance</a></div><div class="ttdeci">uint32_t Instance</div><div class="ttdoc">Index of this unique object instance. </div><div class="ttdef"><b>Definition:</b> detectNet.h:102</div></div>
<div class="ttc" id="classdetectNet_html_a77b8f8059780ab552d97a046c32e1f8a"><div class="ttname"><a href="classdetectNet.html#a77b8f8059780ab552d97a046c32e1f8a">detectNet::mNumDetectionSets</a></div><div class="ttdeci">static const uint32_t mNumDetectionSets</div><div class="ttdef"><b>Definition:</b> detectNet.h:419</div></div>
<div class="ttc" id="classdetectNet_html_a29e74cde23a8dd541dbd848e457663d6a966eaaaa69ed08d36dcb862e3fc644bf"><div class="ttname"><a href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6a966eaaaa69ed08d36dcb862e3fc644bf">detectNet::OVERLAY_NONE</a></div><div class="ttdoc">No overlay. </div><div class="ttdef"><b>Definition:</b> detectNet.h:172</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a127aaa41b6d1032aeb13fde8e6856247"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a127aaa41b6d1032aeb13fde8e6856247">detectNet::Detection::Center</a></div><div class="ttdeci">void Center(float *x, float *y) const</div><div class="ttdoc">Return true if the coordinate is inside the bounding box. </div><div class="ttdef"><b>Definition:</b> detectNet.h:131</div></div>
<div class="ttc" id="classdetectNet_html_ae25ca7f51a3235011442ac1edeafe1d8"><div class="ttname"><a href="classdetectNet.html#ae25ca7f51a3235011442ac1edeafe1d8">detectNet::sortDetections</a></div><div class="ttdeci">void sortDetections(Detection *detections, int numDetections)</div></div>
<div class="ttc" id="classdetectNet_html_a8912b56ba825368c4911e315f4f207e4aba129790ea4695b8fc94f0eeecb344de"><div class="ttname"><a href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4aba129790ea4695b8fc94f0eeecb344de">detectNet::FACENET</a></div><div class="ttdoc">Human facial detector trained on FDDB. </div><div class="ttdef"><b>Definition:</b> detectNet.h:188</div></div>
<div class="ttc" id="classdetectNet_html_a812068e3db1f9f991e84a217e275b1e0"><div class="ttname"><a href="classdetectNet.html#a812068e3db1f9f991e84a217e275b1e0">detectNet::loadClassDesc</a></div><div class="ttdeci">bool loadClassDesc(const char *filename)</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a2ae87aae76d065e19be1897119daba66"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a2ae87aae76d065e19be1897119daba66">detectNet::Detection::Height</a></div><div class="ttdeci">float Height() const</div><div class="ttdoc">Calculate the area of the object. </div><div class="ttdef"><b>Definition:</b> detectNet.h:116</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_aa008c7f9d614b314281366b7797cd00a"><div class="ttname"><a href="structdetectNet_1_1Detection.html#aa008c7f9d614b314281366b7797cd00a">detectNet::Detection::Right</a></div><div class="ttdeci">float Right</div><div class="ttdoc">Right bounding box coordinate (in pixels) </div><div class="ttdef"><b>Definition:</b> detectNet.h:108</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a14e6f8a1a69ebe30e7c57299ece48c28"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a14e6f8a1a69ebe30e7c57299ece48c28">detectNet::Detection::Area</a></div><div class="ttdeci">static float Area(float x1, float y1, float x2, float y2)</div><div class="ttdoc">Return the center of the object. </div><div class="ttdef"><b>Definition:</b> detectNet.h:128</div></div>
<div class="ttc" id="classdetectNet_html_ae929c4fd2f6e7a97acec01b6b584e34b"><div class="ttname"><a href="classdetectNet.html#ae929c4fd2f6e7a97acec01b6b584e34b">detectNet::mCustomClasses</a></div><div class="ttdeci">uint32_t mCustomClasses</div><div class="ttdef"><b>Definition:</b> detectNet.h:412</div></div>
<div class="ttc" id="classdetectNet_html_a29e74cde23a8dd541dbd848e457663d6af7ce69cd21d84fb3b963713da66756eb"><div class="ttname"><a href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6af7ce69cd21d84fb3b963713da66756eb">detectNet::OVERLAY_CONFIDENCE</a></div><div class="ttdoc">Overlay the detection confidence values. </div><div class="ttdef"><b>Definition:</b> detectNet.h:175</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a239620621f33ed918d2f86a678a68c16"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a239620621f33ed918d2f86a678a68c16">detectNet::Detection::Area</a></div><div class="ttdeci">float Area() const</div><div class="ttdoc">Calculate the width of the bounding box. </div><div class="ttdef"><b>Definition:</b> detectNet.h:119</div></div>
<div class="ttc" id="classdetectNet_html_a93f21ec31720efe6b37de28c688449ac"><div class="ttname"><a href="classdetectNet.html#a93f21ec31720efe6b37de28c688449ac">detectNet::GetClassColor</a></div><div class="ttdeci">float * GetClassColor(uint32_t classIndex) const</div><div class="ttdoc">Retrieve the RGBA visualization color a particular class. </div><div class="ttdef"><b>Definition:</b> detectNet.h:372</div></div>
<div class="ttc" id="group__tensorNet_html_ga5a46a965749d6118e01307fd4d4865c9"><div class="ttname"><a href="group__tensorNet.html#ga5a46a965749d6118e01307fd4d4865c9">DEFAULT_MAX_BATCH_SIZE</a></div><div class="ttdeci">#define DEFAULT_MAX_BATCH_SIZE</div><div class="ttdoc">Default maximum batch size. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:65</div></div>
<div class="ttc" id="classdetectNet_html_a38689b7d4b83723038677d66c1961974"><div class="ttname"><a href="classdetectNet.html#a38689b7d4b83723038677d66c1961974">detectNet::GetMaxDetections</a></div><div class="ttdeci">uint32_t GetMaxDetections() const</div><div class="ttdoc">Retrieve the maximum number of simultaneous detections the network supports. </div><div class="ttdef"><b>Definition:</b> detectNet.h:347</div></div>
<div class="ttc" id="classtensorNet_html"><div class="ttname"><a href="classtensorNet.html">tensorNet</a></div><div class="ttdoc">Abstract class for loading a tensor network with TensorRT. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:188</div></div>
<div class="ttc" id="classdetectNet_html"><div class="ttname"><a href="classdetectNet.html">detectNet</a></div><div class="ttdoc">Object recognition and localization networks with TensorRT support. </div><div class="ttdef"><b>Definition:</b> detectNet.h:93</div></div>
<div class="ttc" id="classdetectNet_html_a6213356e9907dc284e3212c42b346c62"><div class="ttname"><a href="classdetectNet.html#a6213356e9907dc284e3212c42b346c62">detectNet::defaultColors</a></div><div class="ttdeci">bool defaultColors()</div></div>
<div class="ttc" id="classdetectNet_html_a38283495a61399d8347d67eb95dbe321"><div class="ttname"><a href="classdetectNet.html#a38283495a61399d8347d67eb95dbe321">detectNet::mMaxDetections</a></div><div class="ttdeci">uint32_t mMaxDetections</div><div class="ttdef"><b>Definition:</b> detectNet.h:417</div></div>
<div class="ttc" id="classdetectNet_html_a8c336e6b018a780e7ca74897d1bce628"><div class="ttname"><a href="classdetectNet.html#a8c336e6b018a780e7ca74897d1bce628">detectNet::Usage</a></div><div class="ttdeci">static const char * Usage()</div><div class="ttdoc">Usage string for command line arguments to Create() </div><div class="ttdef"><b>Definition:</b> detectNet.h:293</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a425de0ee8eaca1dceea17280cb4890b4"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a425de0ee8eaca1dceea17280cb4890b4">detectNet::Detection::Overlaps</a></div><div class="ttdeci">bool Overlaps(float x1, float y1, float x2, float y2) const</div><div class="ttdoc">Expand the bounding box if they overlap (return true if so) </div><div class="ttdef"><b>Definition:</b> detectNet.h:152</div></div>
<div class="ttc" id="classdetectNet_html_a2a95020a83b2c33353450505355af0ca"><div class="ttname"><a href="classdetectNet.html#a2a95020a83b2c33353450505355af0ca">detectNet::mCoverageThreshold</a></div><div class="ttdeci">float mCoverageThreshold</div><div class="ttdef"><b>Definition:</b> detectNet.h:404</div></div>
<div class="ttc" id="classdetectNet_html_a8085235ab275b1bad3dcde14ec1223ed"><div class="ttname"><a href="classdetectNet.html#a8085235ab275b1bad3dcde14ec1223ed">detectNet::GetClassPath</a></div><div class="ttdeci">const char * GetClassPath() const</div><div class="ttdoc">Retrieve the path to the file containing the class descriptions. </div><div class="ttdef"><b>Definition:</b> detectNet.h:367</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a97869bd21815bfc1ca005fa057329ffe"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a97869bd21815bfc1ca005fa057329ffe">detectNet::Detection::Bottom</a></div><div class="ttdeci">float Bottom</div><div class="ttdoc">Bottom bounding box coordinate (in pixels) </div><div class="ttdef"><b>Definition:</b> detectNet.h:110</div></div>
<div class="ttc" id="classdetectNet_html_a8912b56ba825368c4911e315f4f207e4"><div class="ttname"><a href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4">detectNet::NetworkType</a></div><div class="ttdeci">NetworkType</div><div class="ttdoc">Network choice enumeration. </div><div class="ttdef"><b>Definition:</b> detectNet.h:181</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a04b420d87cc33bd1b3d3192509b4bfa5"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a04b420d87cc33bd1b3d3192509b4bfa5">detectNet::Detection::Confidence</a></div><div class="ttdeci">float Confidence</div><div class="ttdoc">Confidence value of the detected object. </div><div class="ttdef"><b>Definition:</b> detectNet.h:104</div></div>
<div class="ttc" id="classdetectNet_html_a07a419d97f14aa0962b737e671ff438a"><div class="ttname"><a href="classdetectNet.html#a07a419d97f14aa0962b737e671ff438a">detectNet::detectNet</a></div><div class="ttdeci">detectNet(float meanPixel=0.0f)</div></div>
<div class="ttc" id="group__detectNet_html_ga5de620e838c2ac9aec16c6de2977513f"><div class="ttname"><a href="group__detectNet.html#ga5de620e838c2ac9aec16c6de2977513f">DETECTNET_DEFAULT_THRESHOLD</a></div><div class="ttdeci">#define DETECTNET_DEFAULT_THRESHOLD</div><div class="ttdoc">Default value of the minimum detection threshold. </div><div class="ttdef"><b>Definition:</b> detectNet.h:52</div></div>
<div class="ttc" id="classdetectNet_html_acf351fe11541d733a37ba99c9b0c8aa3"><div class="ttname"><a href="classdetectNet.html#acf351fe11541d733a37ba99c9b0c8aa3">detectNet::mNumClasses</a></div><div class="ttdeci">uint32_t mNumClasses</div><div class="ttdef"><b>Definition:</b> detectNet.h:413</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a344619ce0a8fc04050b3cb6238a815f9"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a344619ce0a8fc04050b3cb6238a815f9">detectNet::Detection::Overlaps</a></div><div class="ttdeci">bool Overlaps(const Detection &amp;det) const</div><div class="ttdoc">Return true if the bounding boxes overlap. </div><div class="ttdef"><b>Definition:</b> detectNet.h:149</div></div>
<div class="ttc" id="classdetectNet_html_a82c0e177e0da142fa22aa7580077307d"><div class="ttname"><a href="classdetectNet.html#a82c0e177e0da142fa22aa7580077307d">detectNet::~detectNet</a></div><div class="ttdeci">virtual ~detectNet()</div><div class="ttdoc">Destory. </div></div>
<div class="ttc" id="classdetectNet_html_a29e74cde23a8dd541dbd848e457663d6"><div class="ttname"><a href="classdetectNet.html#a29e74cde23a8dd541dbd848e457663d6">detectNet::OverlayFlags</a></div><div class="ttdeci">OverlayFlags</div><div class="ttdoc">Overlay flags (can be OR&amp;#39;d together). </div><div class="ttdef"><b>Definition:</b> detectNet.h:170</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_a15b1dafa33b267e1ee2cba6eba0a9ae1"><div class="ttname"><a href="structdetectNet_1_1Detection.html#a15b1dafa33b267e1ee2cba6eba0a9ae1">detectNet::Detection::Reset</a></div><div class="ttdeci">void Reset()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> detectNet.h:161</div></div>
<div class="ttc" id="classdetectNet_html_ab95004897e18f73cff95a59796f17368"><div class="ttname"><a href="classdetectNet.html#ab95004897e18f73cff95a59796f17368">detectNet::clusterDetections</a></div><div class="ttdeci">int clusterDetections(Detection *detections, uint32_t width, uint32_t height)</div></div>
<div class="ttc" id="structdetectNet_1_1Detection_html_aeb58c09e547bd40f3a0e33cdd4c7640e"><div class="ttname"><a href="structdetectNet_1_1Detection.html#aeb58c09e547bd40f3a0e33cdd4c7640e">detectNet::Detection::Width</a></div><div class="ttdeci">float Width() const</div><div class="ttdoc">Calculate the height of the object. </div><div class="ttdef"><b>Definition:</b> detectNet.h:113</div></div>
<div class="ttc" id="classdetectNet_html_a8912b56ba825368c4911e315f4f207e4a46004cf6402155cfac9107356b5e7148"><div class="ttname"><a href="classdetectNet.html#a8912b56ba825368c4911e315f4f207e4a46004cf6402155cfac9107356b5e7148">detectNet::CUSTOM</a></div><div class="ttdoc">Custom model from user. </div><div class="ttdef"><b>Definition:</b> detectNet.h:183</div></div>
<div class="ttc" id="classdetectNet_html_a6bad305fe1207b5ad6a1f49e4879c158"><div class="ttname"><a href="classdetectNet.html#a6bad305fe1207b5ad6a1f49e4879c158">detectNet::Overlay</a></div><div class="ttdeci">bool Overlay(float *input, float *output, uint32_t width, uint32_t height, Detection *detections, uint32_t numDetections, uint32_t flags=OVERLAY_BOX)</div><div class="ttdoc">Draw the detected bounding boxes overlayed on an RGBA image. </div></div>
<div class="ttc" id="tensorNet_8h_html_a64c8f3dfeacfa962ff9e23c586aedd1b"><div class="ttname"><a href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">Dims3</a></div><div class="ttdeci">nvinfer1::Dims3 Dims3</div><div class="ttdef"><b>Definition:</b> tensorNet.h:48</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_2e4d84877693cd000e5cb535f4b23486.html">jetson-inference</a></li><li class="navelem"><a class="el" href="detectNet_8h.html">detectNet.h</a></li>
    <li class="footer">Generated on Thu Sep 26 2019 12:19:11 for Jetson Inference by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
